Skip to content

feat: scaffold open source monorepo (v1 MVP) - #1

Open
DamiMartinez wants to merge 1 commit into
mainfrom
feat/oss-scaffold
Open

feat: scaffold open source monorepo (v1 MVP)#1
DamiMartinez wants to merge 1 commit into
mainfrom
feat/oss-scaffold

Conversation

@DamiMartinez

Copy link
Copy Markdown
Contributor

Summary

  • Full monorepo scaffold for open source ChatIntel v1
  • FastAPI backend with PostgreSQL replacing BigQuery/GCS/Supabase
  • React + Vite frontend with custom JWT auth (no Supabase dependency)
  • Docker Compose self-hosting — single docker compose up
  • LiteLLM-powered LLM-as-judge evaluations (model-agnostic)

What's included

API (api/)

  • chatintel/database.py — 6 SQLAlchemy models: User, Conversation, Label, ConversationLabel, DataSource, Evaluation
  • chatintel/auth.py — bcrypt password hashing + JWT signing
  • chatintel/storage.py — local filesystem or S3/MinIO file storage
  • chatintel/worker.py — Celery task: parse CSV/JSON/JSONL → conversations table
  • routers/auth.py — signup, login, /me
  • routers/ingest.py — CSV/JSON/JSONL upload with format validation
  • routers/conversations.py — paginated list + detail with labels
  • routers/labels.py — CRUD + assign/remove labels on conversations
  • routers/metrics.py — dashboard metrics (summary + daily time-series)
  • routers/evaluations.py — LLM-as-judge via LiteLLM (helpfulness, tone, resolution, clarity)
  • alembic/ — full schema migration

Web (web/)

  • Custom JWT AuthContext — localStorage token, no Supabase
  • Pages: Dashboard, Conversations, ConversationDetail, Upload, Labels, Evaluations
  • All shadcn/ui components

Root

  • docker-compose.yml — postgres+pgvector, redis, api, worker, web
  • .env.example — all config vars documented
  • Apache 2.0 license

Test plan

  • cp .env.example .env && docker compose up — all services start
  • Signup/login flow works
  • Upload CSV → conversations appear after processing
  • Dashboard metrics render with time range filter
  • Labels CRUD and assignment work
  • Evaluations run against conversations and scores appear in detail view

🤖 Generated with Claude Code

Add full v1 MVP implementation: FastAPI backend with PostgreSQL (replacing
BigQuery/GCS/Supabase), React+Vite frontend with custom JWT auth, Docker
Compose self-hosting, and LiteLLM-powered LLM-as-judge evaluations.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant